import requests  # 安装的第三方扩展包 pip install requests
import os
from lxml import etree

# 定义函数
def baidu():
    # 爬取百度的源代码
    # 1. 定义一个变量, 接收的是网址, 代表你要爬虫的那个网站
    url = "https://www.baidu.com/"  # url: 全球统一资源定位符  uri:网址
    # headers是一个字典, 它的作用: 模拟浏览器
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78'
    }
    # 2. 利用requests模块来获取百度的源代码
    r = requests.get(url, headers=headers).text  # 利用requests模块, 模拟浏览器, 来获取百度的源代码
    ret = etree.HTML(r)
    # 获得任意位置的div标签
    div_list = ret.xpath('//div')
    for div in div_list:
        if len(div.xpath('.//a/@href'))>0:
            src = div.xpath('.//a/@href')[0]
        print(src)
    i = 1
    # print(r)
    # 3. 将读取出来的文本写入到百度.html文件中, w:write
    with open('百度/{i}.html', 'w', encoding='utf-8') as f:
        f.write(r)




if __name__ == '__main__':
    # 如果当前路径没有'百度'文件夹
    if not os.path.exists(r'百度'):
        # 则创建'百度'文件夹
        os.mkdir(r'百度')
    # 调用函数
    baidu()

"""
某些网站会有反爬措施
应该针对性的采用措施

通用爬虫: 爬取这个页面的源代码
"""
